From: Benjamin Otte Date: Sat, 25 Dec 2021 13:41:20 +0000 (+0100) Subject: glcontext: Use different log levels for GL debug X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~91^2^2~15^2~4 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=4e2dbc12584c70f0d32fcd1b0bfab009d0828b22;p=gtk4.git glcontext: Use different log levels for GL debug We want critical GL debug messages to be critical, so that the testsuite sudokus itself when they appear. This is relevant in particular for GLES warnings in the GLES runner, because its warnings can cause crashes on GL drivers less forgiving than Mesa. Related: #4571 --- diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c index 9ab690f6fa..f8af9275a0 100644 --- a/gdk/gdkglcontext.c +++ b/gdk/gdkglcontext.c @@ -1329,6 +1329,7 @@ gl_debug_message_callback (GLenum source, const char *message_source; const char *message_type; const char *message_severity; + GLogLevelFlags log_level; if (severity == GL_DEBUG_SEVERITY_NOTIFICATION) return; @@ -1390,22 +1391,31 @@ gl_debug_message_callback (GLenum source, { case GL_DEBUG_SEVERITY_HIGH: message_severity = "High"; + log_level = G_LOG_LEVEL_CRITICAL; break; case GL_DEBUG_SEVERITY_MEDIUM: message_severity = "Medium"; + log_level = G_LOG_LEVEL_WARNING; break; case GL_DEBUG_SEVERITY_LOW: message_severity = "Low"; + log_level = G_LOG_LEVEL_MESSAGE; break; case GL_DEBUG_SEVERITY_NOTIFICATION: message_severity = "Notification"; + log_level = G_LOG_LEVEL_INFO; break; default: message_severity = "Unknown"; + log_level = G_LOG_LEVEL_MESSAGE; } - g_warning ("OPENGL:\n Source: %s\n Type: %s\n Severity: %s\n Message: %s", - message_source, message_type, message_severity, message); + /* There's no higher level function taking a log level argument... */ + g_log_structured_standard (G_LOG_DOMAIN, log_level, + __FILE__, G_STRINGIFY (__LINE__), + G_STRFUNC, + "OPENGL:\n Source: %s\n Type: %s\n Severity: %s\n Message: %s", + message_source, message_type, message_severity, message); } /**